/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package CapaPersistencia;


import CapaDatos.Habitacion;
import java.util.ArrayList;


/**
 * Clase controladora para el dominio de Cliente
 *
 */
public class ControladorHabitacion {

    /** atributo para el manejo de la persistencia de cliente*/
    private IDAOHabitacion manejadorPersistencia = new DAOHabitacionXML();

    /**
     * firma para registrar un nuevo cliente en el sistema
     * @param cedula cedula del cliente
     * @param nombre nombre del cliente
     * @param apellido apellido del cliente
     * @param Fecha fecha de nacimiento del cliente
     * @return valor booleano con la condicion de exito
     */
    public boolean nuevaHabitacion(String tipoHab, String id, String area, String edoActual)
         {

        System.out.println("tipoHab "+tipoHab);
        System.out.println("id "+id);
        System.out.println("area "+area);
        System.out.println("edoActual "+edoActual);
        boolean resultado = false;
        Habitacion habitacionNuevo = new Habitacion(tipoHab, id, area, edoActual);
        resultado = manejadorPersistencia.agregarHabitacion(habitacionNuevo);
        return resultado;
    }

    /**
     *  firma para actualizar un cliente en el sistema
     * @param cedula cedula del cliente
     * @param nombre nombre del cliente
     * @param apellido apellido del cliente
     * @param Fecha fecha de nacimiento del cliente
     * @return valor booleano con la condicion de exito
     */
    public boolean actualizarHabitacion(String tipoHab, String id, String area, String edoActual)
            {
        boolean resultado = false;
        Habitacion HabitacionAct = new Habitacion ();
        HabitacionAct.setTipoHab(tipoHab);
        HabitacionAct.setID(id);
        HabitacionAct.setArea(area);
        HabitacionAct.setEdoActual(edoActual);
        resultado = manejadorPersistencia.actualizarHabitacion(HabitacionAct);
        return resultado;
    }

    /**
     * firma para eliminar un cliente del sistema
     * @param cedula cedula del cliente a eliminar
     * @return valor booleano con la condicion de exito
     */
    public boolean eliminarHabitacion(String id) {
        boolean resultado = false;
        Integer idEliminar = Integer.parseInt(id);
        resultado = manejadorPersistencia.borrarHabitacion(idEliminar);
        return resultado;
    }

    /**
     * firma para buscar un cliente en el sistema
     * @param cedula cedula del cliente a buscar
     * @return objeto cliente con los datos
     */
    public Habitacion buscarHabitacion(String id) {
        Habitacion resultado = new Habitacion ();
        Integer idBuscar = Integer.parseInt(id);
        resultado = manejadorPersistencia.buscarHabitacion(idBuscar);
        return resultado;
    }

    /**
     * Firma para obtener todos los clientes del sistema
     * @return ArrayList con todos los clientes del sistema
     */
    public ArrayList<Habitacion> todasLasHabitaciones() {
        return this.manejadorPersistencia.todasLasHabitaciones();
    }
}
